Modern two way radio communication systems are well known in the art, and can generally be characterized as being either conventional or trunked systems. Generally speaking, conventional radio communication systems employ a limited number of communication resources (e.g., RF channel pairs, TDM time slots, etc.) to establish communications between a plurality of communication devices (e.g., consoles, mobile and portable subscribers). While these limited number of communication resources are shared among the plurality of communication devices, it is common for the communication devices to limit their use to a single communication resource, for transmitting data and voice traffic.
By contrast, a trunked communication system includes those components of a conventional communications system, plus a central controller that effectively allocates the limited number of communication resources amongst the plurality of communication devices. In this manner, trunked systems are able to more efficiently distribute the voice and data traffic across the available communication resources. Indeed, trunked radio systems often include dedicated data channels to facilitate large amounts of data traffic between two or more communication devices.
One problem with transmitting both data and voice on a common communication resource, as is the case in a conventional radio system having integrated voice and data services, is the frequent conflict between ongoing voice transmissions and the need for transmitting data over that same resource. For obvious reasons, the ongoing voice traffic is typically given a higher priority than the data messages, resulting in an accumulation of queued data messages at one or more data sources. Of course, the greater the amount of voice traffic in a given period, the more data messages accumulate at the data sources. Over time, the foregoing scenario results in undue transmission delays and even lost data messages. Increasing the data buffer size at each of the accumulation points is not only cost prohibitive, but only delays the inevitable, i.e., that data messages will eventually accumulate to a point of congestion.
While the problem of dropped data messages is obvious, the problems associated with data transmission delays is more subtle. First, because voice traffic typically has priority over data traffic, the users of the radio communication system may not even be aware that data messages are accumulating. Thus, without indication that there may be a problem, the users continue transmitting voice traffic, thereby adding to the problem. In those instances where voice traffic is preempting the transmission of data, the system becomes inundated with retry requests in an attempt to empty the data buffers at the data sources. For each second that the data remains stagnant in the data buffer, unable to be transmitted, the data itself becomes less and less useful. By way of example, a police officer waiting for vehicle license information from a central console requires a timely response to his data request. If the voice/data channel is congested, his data cannot be sent in a timely fashion. Of course, this problem is exaggerated under emergency conditions.
Accordingly, there exists a need for a radio communications system that mitigates data congestion in an integrated voice / data communications system. In particular, a radio communication system that is capable of detecting congestion and taking steps to mitigate that congestion on a common communication resource would be an improvement over the prior art.